【Andrew Ng 深度学习视频笔记】-lec1.2

本文记录第一课第二周视频中的概念,因为内容相对简单,只是稍作记录。

1.线性回归及神经网络概念

本质上说,构造神经网络的目的是为了让网络的表达能力提高,足以表示任意的函数

简单的广义线性模型——逻辑回归

Logistic Regression
主要公式:
模型:$z = wx+b , \hat{y} = \frac{1}{1+e^{-z}}$
对于单样本的 Loss function: $\zeta(x^{i},y^{i}) = -(y^{i}\log{\hat{y^{i}}}+(1-y^{i})\log{(1-\hat{y^{i}})})\tag{1}$

之所以用这个loss function 而不用传统的 $(\hat{y^i}-y^i)^2$,是因为这个式子不能使损失函数为凸函数,不能做优化

总体的 coss function: $Coss = \frac{1}{m}\sum_{i=1}^{m}\zeta^{i}$

那么这个loss function 是怎么得到的呢,思想是求极大似然估计.

即当$y=1$时,使得 $\hat{y}$趋于1。当$y=0$时,使得 $1-\hat{y}$ 趋于1

我们要解出合理的参数,使得下式最大

Likelihood = $\prod_{i=1}^{m}\hat{y}^y\cdot(1-\hat{y})^{1-y}$

两边取对数,最终可得(1)式。

向量化计算

使用python的numpy可以方便的使用向量计算,避免for循环,大大提高计算速度,因为进行向量计算时可以利用CPU或GPU的并行计算能力
向量计算的broadcast能力,numpy可以对不同大小的向量在合理的情况下进行转换